package com.ruoyi.system.domain.fx;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 达达配送订单记录对象 fx_order_dada
 *
 * @author ruoyi
 * @date 2025-03-27
 */
public class FxOrderDada
{
    private static final long serialVersionUID = 1L;

    /** 第三方订单ID，对应下单接口中的origin_id */
    private String orderId;

    /** 达达物流订单号，默认为空 */
    @Excel(name = "达达物流订单号，默认为空")
    private String clientId;

    /** 订单状态(待接单＝1,待取货＝2,骑士到店=100,配送中＝3,已完成＝4,已取消＝5, 已追加待接单=8,妥投异常之物品返回中=9, 妥投异常之物品返回完成=10, 售后取件单送达门店=6, 创建达达运单失败=1000） */
    @Excel(name = "订单状态(待接单＝1,待取货＝2,骑士到店=100,配送中＝3,已完成＝4,已取消＝5, 已追加待接单=8,妥投异常之物品返回中=9, 妥投异常之物品返回完成=10, 售后取件单送达门店=6, 创建达达运单失败=1000）")
    private Integer orderStatus;

    /** 重复回传状态原因(1-重新分配骑士，2-骑士转单) */
    @Excel(name = "重复回传状态原因(1-重新分配骑士，2-骑士转单)")
    private String repeatReasonType;

    /** 订单取消原因,其他状态下默认值为空字符串 */
    @Excel(name = "订单取消原因,其他状态下默认值为空字符串")
    private String cancelReason;

    /** 订单取消原因来源(1:达达配送员取消；2:商家主动取消；3:系统或客服取消；0:默认值) */
    @Excel(name = "订单取消原因来源(1:达达配送员取消；2:商家主动取消；3:系统或客服取消；0:默认值)")
    private String cancelFrom;

    /** 对client_id, order_id, update_time的值进行字符串升序排列，再连接字符串，取md5值 */
    @Excel(name = "对client_id, order_id, update_time的值进行字符串升序排列，再连接字符串，取md5值")
    private String signature;

    /** 达达配送员id，接单以后会传 */
    @Excel(name = "达达配送员id，接单以后会传")
    private String dmId;

    /** 配送员姓名，接单以后会传 */
    @Excel(name = "配送员姓名，接单以后会传")
    private String dmName;

    /** 配送员手机号，接单以后会传 */
    @Excel(name = "配送员手机号，接单以后会传")
    private String dmMobile;

    /** 收货码 */
    @Excel(name = "收货码")
    private String finishCode;

    /** 更新时间 */
    @Excel(name = "更新时间")
    private Long updateTime;

    public void setOrderId(String orderId)
    {
        this.orderId = orderId;
    }

    public String getOrderId()
    {
        return orderId;
    }
    public void setClientId(String clientId)
    {
        this.clientId = clientId;
    }

    public String getClientId()
    {
        return clientId;
    }
    public void setOrderStatus(Integer orderStatus)
    {
        this.orderStatus = orderStatus;
    }

    public Integer getOrderStatus()
    {
        return orderStatus;
    }
    public void setRepeatReasonType(String repeatReasonType)
    {
        this.repeatReasonType = repeatReasonType;
    }

    public String getRepeatReasonType()
    {
        return repeatReasonType;
    }
    public void setCancelReason(String cancelReason)
    {
        this.cancelReason = cancelReason;
    }

    public String getCancelReason()
    {
        return cancelReason;
    }
    public void setCancelFrom(String cancelFrom)
    {
        this.cancelFrom = cancelFrom;
    }

    public String getCancelFrom()
    {
        return cancelFrom;
    }
    public void setSignature(String signature)
    {
        this.signature = signature;
    }

    public String getSignature()
    {
        return signature;
    }
    public void setDmId(String dmId)
    {
        this.dmId = dmId;
    }

    public String getDmId()
    {
        return dmId;
    }
    public void setDmName(String dmName)
    {
        this.dmName = dmName;
    }

    public String getDmName()
    {
        return dmName;
    }
    public void setDmMobile(String dmMobile)
    {
        this.dmMobile = dmMobile;
    }

    public String getDmMobile()
    {
        return dmMobile;
    }
    public void setFinishCode(String finishCode)
    {
        this.finishCode = finishCode;
    }

    public String getFinishCode()
    {
        return finishCode;
    }

    public Long getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(Long updateTime) {
        this.updateTime = updateTime;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
                .append("orderId", getOrderId())
                .append("clientId", getClientId())
                .append("orderStatus", getOrderStatus())
                .append("repeatReasonType", getRepeatReasonType())
                .append("cancelReason", getCancelReason())
                .append("cancelFrom", getCancelFrom())
                .append("updateTime", getUpdateTime())
                .append("signature", getSignature())
                .append("dmId", getDmId())
                .append("dmName", getDmName())
                .append("dmMobile", getDmMobile())
                .append("finishCode", getFinishCode())
                .toString();
    }
}
